﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Runtime.Serialization;

namespace WaterRegimenMonitor.Web.Models.Common
{
    /// <summary>
    /// 树节点视图模型
    /// </summary>
    /// <remarks></remarks>
    [DataContract]
    public class TreeNodeData
    {
        #region ---Property

        /// <summary>
        /// 获得或者设置节点编号。
        /// </summary>
        /// <value>节点编号。</value>
        /// <remarks></remarks>
        [DataMember]
        public Guid id
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置父节点编号。
        /// </summary>
        /// <value>编号。</value>
        /// <remarks></remarks>
        [DataMember]
        public Guid? parentID
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置节点编号。
        /// </summary>
        /// <value>节点编号。</value>
        /// <remarks></remarks>
        [DataMember]
        public string code
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置节点名称。
        /// </summary>
        /// <value>节点名称。</value>
        /// <remarks></remarks>
        [DataMember]
        public string name
        {
            get;
            set;
        }


        /// <summary>
        /// 获得或者设置节点分类。
        /// </summary>
        /// <value>节点分类。</value>
        /// <remarks></remarks>
        [DataMember]
        public int category
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置节点分类名称。
        /// </summary>
        /// <value>节点分类名称。</value>
        /// <remarks></remarks>
        [DataMember]
        public string categoryName
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置节点拼音。
        /// </summary>
        /// <value>节点拼音。</value>
        /// <remarks></remarks>
        [DataMember]
        public string pinyin
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置计量单位。
        /// </summary>
        /// <value>计量单位。</value>
        /// <remarks></remarks>
        [DataMember]
        public string unit
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置是否为叶子节点。
        /// </summary>
        /// <value>是否为叶子节点。</value>
        /// <remarks></remarks>
        [DataMember]
        public bool leaf
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置是否展开。
        /// </summary>
        /// <value>是否展开。</value>
        /// <remarks></remarks>
        [DataMember]
        public bool expanded
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置节点样式。
        /// </summary>
        /// <value>节点样式。</value>
        /// <remarks></remarks>
        [DataMember]
        public string iconCls
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置节点的子节点。
        /// </summary>
        /// <value>节点的子节点。</value>
        /// <remarks></remarks>
        [DataMember]
        public IEnumerable<TreeNodeData> data
        {
            get;
            set;
        }

        #endregion
    }
}